-; UltimateKEYS (for AutoHotkey v2.0).ahk - 2022-05-29
+; UltimateKEYS (for AutoHotkey v2.0).ahk - 2022-06-04
; Website : www.ultimatekeys.info (pieter-degroote.github.io/UltimateKEYS/)
cmpCedillaOgonek[" "] := "{u+00b8}" ; (¸) cedilla
-; Compose : Breve/Special (b)
+; Compose : Breve and Special Letters (b)
global cmpBreveSpecial := Map()
cmpBreveSpecial["a"] := "{u+0103}" ; (ă) a with breve
cmpTilde[" "] := "{u+02dc}" ; (˜) small tilde
-; Compose : Hook and Latin Greek Letters (h)
+; Compose : Hook and Horn (h)
global cmpHook := Map()
cmpHook["b"] := "{u+0253}" ; (ɓ) b with hook
cmpHook["G"] := "{u+0193}" ; (Ɠ) G with hook
cmpHook["h"] := "{u+0266}" ; (ɦ) h with hook
cmpHook["H"] := "{u+a7aa}" ; (Ɦ) H with hook
+cmpHook["j"] := "{u+0267}" ; (ɧ) small letter heng with hook
cmpHook["k"] := "{u+0199}" ; (ƙ) k with hook
cmpHook["K"] := "{u+0198}" ; (Ƙ) K with hook
cmpHook["m"] := "{u+0271}" ; (ɱ) m with hook
cmpHook["M"] := "{u+2c6e}" ; (Ɱ) M with hook
cmpHook["n"] := "{u+0272}" ; (ɲ) n with left hook
cmpHook["N"] := "{u+019d}" ; (Ɲ) N with left hook
+cmpHook["o"] := "{u+01a1}" ; (ơ) o with horn
+cmpHook["O"] := "{u+01a0}" ; (Ơ) O with horn
cmpHook["p"] := "{u+01a5}" ; (ƥ) p with hook
cmpHook["P"] := "{u+01a4}" ; (Ƥ) P with hook
cmpHook["q"] := "{u+024b}" ; (ɋ) q with hook tail
cmpHook["R"] := "{u+2c64}" ; (Ɽ) R with tail
cmpHook["t"] := "{u+01ad}" ; (ƭ) t with hook
cmpHook["T"] := "{u+01ac}" ; (Ƭ) T with hook
+cmpHook["u"] := "{u+01b0}" ; (ư) u with horn
+cmpHook["U"] := "{u+01af}" ; (Ư) U with horn
cmpHook["v"] := "{u+028b}" ; (ʋ) v with hook
cmpHook["V"] := "{u+01b2}" ; (Ʋ) V with hook
cmpHook["w"] := "{u+2c73}" ; (ⱳ) w with hook
cmpHook["Y"] := "{u+01b3}" ; (Ƴ) Y with hook
cmpHook["z"] := "{u+0225}" ; (ȥ) z with hook
cmpHook["Z"] := "{u+0224}" ; (Ȥ) Z with hook
-cmpHook["a"] := "{u+0251}" ; (ɑ) latin small letter alpha
-cmpHook["A"] := "{u+2c6d}" ; (Ɑ) latin capital letter alpha
-cmpHook["e"] := "{u+025b}" ; (ɛ) small open e (latin small epsilon)
-cmpHook["E"] := "{u+0190}" ; (Ɛ) capital open E (latin capital epsilon)
-cmpHook["i"] := "{u+0269}" ; (ɩ) latin small letter iota
-cmpHook["I"] := "{u+0196}" ; (Ɩ) latin capital letter iota
-cmpHook["j"] := "{u+0263}" ; (ɣ) latin small gamma
-cmpHook["J"] := "{u+0194}" ; (Ɣ) latin capital gamma
-cmpHook["o"] := "{u+0254}" ; (ɔ) small open o
-cmpHook["O"] := "{u+0186}" ; (Ɔ) capital open O
-cmpHook["s"] := "{u+0283}" ; (ʃ) small letter esh
-cmpHook["S"] := "{u+01a9}" ; (Ʃ) capital letter esh
-cmpHook["u"] := "{u+028a}" ; (ʊ) latin small letter upsilon
-cmpHook["U"] := "{u+01b1}" ; (Ʊ) latin capital letter upsilon
-
-
-; Compose : Horn and Special Letters (H)
-
-global cmpHorn := Map()
-cmpHorn["o"] := "{u+01a1}" ; (ơ) o with horn
-cmpHorn["O"] := "{u+01a0}" ; (Ơ) O with horn
-cmpHorn["u"] := "{u+01b0}" ; (ư) u with horn
-cmpHorn["U"] := "{u+01af}" ; (Ư) U with horn
-cmpHorn["g"] := "{u+ab36}" ; (ꬶ) cross-tailed g
-cmpHorn["h"] := "{u+0267}" ; (ɧ) small letter heng with hook
-cmpHorn["j"] := "{u+a727}" ; (ꜧ) small letter heng
-cmpHorn["J"] := "{u+a726}" ; (Ꜧ) capital letter heng
-cmpHorn["k"] := "{u+0138}" ; (ĸ) small letter kra
-cmpHorn["s"] := "{u+017f}" ; (ſ) small long s
-cmpHorn["S"] := "{u+1e9b}" ; (ẛ) small long s with dot above
+
+
+; Compose : Latin Greek Letters and Variations (l)
+
+global cmpLatinGreek := Map()
+cmpLatinGreek["a"] := "{u+0251}" ; (ɑ) latin small letter alpha
+cmpLatinGreek["A"] := "{u+2c6d}" ; (Ɑ) latin capital letter alpha
+cmpLatinGreek["c"] := "{u+ab36}" ; (ꬶ) cross-tailed g
+cmpLatinGreek["e"] := "{u+025b}" ; (ɛ) small open e (latin small epsilon)
+cmpLatinGreek["E"] := "{u+0190}" ; (Ɛ) capital open E (latin capital epsilon)
+cmpLatinGreek["f"] := "{u+017f}" ; (ſ) small long s
+cmpLatinGreek["F"] := "{u+1e9b}" ; (ẛ) small long s with dot above
+cmpLatinGreek["g"] := "{u+0263}" ; (ɣ) latin small gamma
+cmpLatinGreek["G"] := "{u+0194}" ; (Ɣ) latin capital gamma
+cmpLatinGreek["h"] := "{u+a727}" ; (ꜧ) small letter heng
+cmpLatinGreek["H"] := "{u+a726}" ; (Ꜧ) capital letter heng
+cmpLatinGreek["i"] := "{u+0269}" ; (ɩ) latin small letter iota
+cmpLatinGreek["I"] := "{u+0196}" ; (Ɩ) latin capital letter iota
+cmpLatinGreek["k"] := "{u+0138}" ; (ĸ) small letter kra
+cmpLatinGreek["o"] := "{u+0254}" ; (ɔ) small open o
+cmpLatinGreek["O"] := "{u+0186}" ; (Ɔ) capital open O
+cmpLatinGreek["s"] := "{u+0283}" ; (ʃ) small letter esh
+cmpLatinGreek["S"] := "{u+01a9}" ; (Ʃ) capital letter esh
+cmpLatinGreek["u"] := "{u+028a}" ; (ʊ) latin small letter upsilon
+cmpLatinGreek["U"] := "{u+01b1}" ; (Ʊ) latin capital letter upsilon
; Compose : Turned Letters (t)
cmpPercent["3"] := "{u+2030}" ; (‰) per mille sign
cmpPercent["4"] := "{u+2031}" ; (‱) per ten thousand sign
cmpExclam["="] := "{u+2260}" ; (≠) not equal to
-cmpDoubleAcute["/"] := "{u+2260}" ; (≠) not equal to
-cmpStroke["="] := "{u+2260}" ; (≠) not equal to
+cmpLessThan[">"] := "{u+2260}" ; (≠) not equal to
cmpLessThan["="] := "{u+2264}" ; (≤) less-than or equal to
cmpGreaterThan["="] := "{u+2265}" ; (≥) greater-than or equal to
cmpLessThan["+"] := "{u+2a7d}" ; (⩽) less-than or slanted equal to
Send "{u+00db}" ; (Û) U with circumflex
}
->!-:: {
+>!6:: {
if GetKeyState("CapsLock", "T")
Send "{u+00c3}" ; (Ã) A with tilde
else
Send "{u+00e3}" ; (ã) a with tilde
}
->!_:: {
+>!+6:: {
if GetKeyState("CapsLock", "T")
Send "{u+00e3}" ; (ã) a with tilde
else
Send "{u+00c3}" ; (Ã) A with tilde
}
->!=:: {
+>!7:: {
if GetKeyState("CapsLock", "T")
Send "{u+00d5}" ; (Õ) O with tilde
else
Send "{u+00f5}" ; (õ) o with tilde
}
->!+=:: {
+>!+7:: {
if GetKeyState("CapsLock", "T")
Send "{u+00f5}" ; (õ) o with tilde
else
>!1::Send "{u+00a1}" ; (¡) inverted exclamation mark
>!+1::Send "{u+00b9}" ; (¹) superscript 1
->!2::Send "{u+2013}" ; (–) en dash
+>!2::Send "{u+2264}" ; (≤) less-than or equal to
>!+2::Send "{u+00b2}" ; (²) superscript 2
->!3::Send "{u+2014}" ; (—) em dash
+>!3::Send "{u+2265}" ; (≥) greater-than or equal to
>!+3::Send "{u+00b3}" ; (³) superscript 3
>!4::Send "{u+00a3}" ; (£) pound sign
>!5::Send "{u+20ac}" ; (€) euro sign
>!+5::Send "{u+00a2}" ; (¢) cent sign (dollar)
->!6::Send "{u+2264}" ; (≤) less-than or equal to
->!+6::Send "{u+2260}" ; (≠) not equal to
-
->!7::Send "{u+2265}" ; (≥) greater-than or equal to
->!+7::Send "{u+2248}" ; (≈) almost equal to
-
>!8::Send "{u+201e}" ; („) double low-9 quotation mark
->!+8::Send "{u+201a}" ; (‚) single low-9 quotation mark
+>!+8::Send "{u+00a7}" ; (§) section sign
>!9::Send "{u+201c}" ; (“) left double quotation mark
>!+9::Send "{u+2018}" ; (‘) left single quotation mark
>!0::Send "{u+201d}" ; (”) right double quotation mark
>!+0::Send "{u+2019}" ; (’) right single quotation mark
+>!-::Send "{u+2013}" ; (–) en dash
+>!_::Send "{u+2014}" ; (—) em dash
+
+>!=::Send "{u+00d7}" ; (×) multiplication sign
+>!+=::Send "{u+00f7}" ; (÷) division sign
+
>![::Send "{u+00ab}" ; («) left-pointing double angle quotation mark
>!{::Send "{u+2039}" ; (‹) left-pointing single angle quotation mark
>!;::Send "{u+00b0}" ; (°) degree sign
>!+;::Send "{u+00b7}" ; (·) middle dot
->!'::Send "{u+00d7}" ; (×) multiplication sign
->!+'::Send "{u+00f7}" ; (÷) division sign
+>!'::Send "{u+2020}" ; (†) dagger
+>!+'::Send "{u+2021}" ; (‡) double dagger
->!\::Send "{u+00a7}" ; (§) section sign
->!|::Send "{u+2030}" ; (‰) per mille sign
+>!\::Send "{u+2002}" ; en space
+>!|::Send "{u+2003}" ; em space
>!/::Send "{u+00bf}" ; (¿) inverted question mark
>!?::Send "{u+2026}" ; (…) horizontal ellipsis
if cmpHook.Has(ihB.Input)
Send cmpHook[ihB.Input]
}
- else if (ihA.Input == "H") {
- if cmpHorn.Has(ihB.Input)
- Send cmpHorn[ihB.Input]
+ else if (ihA.Input == "l") {
+ if cmpLatinGreek.Has(ihB.Input)
+ Send cmpLatinGreek[ihB.Input]
}
else if (ihA.Input == "t") {
if cmpTurned.Has(ihB.Input)